<template>
  <div style="padding:30px;">
    <el-alert :closable="false" title="文件数" />
    <el-tree :data="data" node-key="id" :props="defaultProps" @node-click="handleNodeClick">
      <span class="custom-tree-node" slot-scope="{node,data}">
        <span>
          <i :class="data.icon"></i>
          <span class="text">{{ data.label }}</span>
        </span>
      </span>
    </el-tree>
  </div>
</template>
<script>
export default {
  data() {
    return {
      data: [{
        label: '一级 1',
        icon: 'el-icon-folder-opened',
        children: [{
          label: '二级 1-1',
          icon: 'el-icon-folder-opened',
          children: [{
            label: '三级 1-1-1',
            icon: 'el-icon-folder',
            id: '111'
          }]
        }]
      }, {
        label: '一级 2',
        children: [{
          label: '二级 2-1',
          children: [{
            label: '三级 2-1-1'
          }]
        }, {
          label: '二级 2-2',
          children: [{
            label: '三级 2-2-1'
          }]
        }]
      }, {
        label: '一级 3',
        children: [{
          label: '二级 3-1',
          children: [{
            label: '三级 3-1-1'
          }]
        }, {
          label: '二级 3-2',
          children: [{
            label: '三级 3-2-1'
          }]
        }]
      }],
      defaultProps: {
        children: 'children',
        label: 'label'
      }
    }
  },
  methods: {
    handleNodeClick(data) {
      console.log(data)
    }
  }
}
</script>
<style lang="less">
.custom-tree-node {
  .text {
    margin-left: 5px;
  }
}
</style>